home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d3 / bingo201.arc / READ.ME < prev    next >
Text File  |  1991-08-20  |  20KB  |  412 lines

  1.                          Read Me file for Bingo 2.01
  2.                          ---------------------------
  3.  
  4.    This file list various pertinent information about the Bingo
  5. Programmer's Text Editor such as:
  6.    -->   included files
  7.    -->   features through previous version, and what's new with
  8.          this version
  9.    -->   major bugs fixed in this version
  10.    -->   some notes about registering
  11.    -->   author's comments
  12.    -->   how to contact the author
  13.    -->   how to aquire the latest version
  14.  
  15. Included files on disk/in archive:
  16. ----------------------------------
  17.  
  18.    read.me      : this file.  chock full of *extremely* important
  19.                   stuff
  20.  
  21.    be.exe       : Bingo Editor 2.01 executable
  22.  
  23.    bswap.com    : program used by Bingo to aid in swapping itself
  24.                   into and out of memory so as to consume only
  25.                   ~10k when executing other programs
  26.  
  27.    bingo.doc    : documentation for Bingo; ready to be printed out
  28.                   on an ascii line printer.
  29.  
  30.    register.txt : copy of the liscense agreement and registration
  31.                   form, ready to be printed out on an ascii line
  32.                   printer.
  33.  
  34.    Additionally, there will be a number of *.cfg files.  These
  35. may include, but are not necessarily limited to:
  36.  
  37.    bingo.cfg    : sample keyboard definition file (the one I use)
  38.  
  39.    emacs.cfg    : sample keyboard definition file which mimics some of
  40.                   the EMACS command set
  41.  
  42.    wskey.cfg    : sample keyboard definition file which allows Bingo
  43.                   to mimic some of the Wordstar command set.
  44.  
  45. Features of Bingo through version 2.0
  46. -------------------------------------
  47.    -  high speed execution, with particularly fast searches,
  48.       screen handling, and file I/O
  49.    -  full color support
  50.    -  superb macro capability
  51.    -  large suite of utility functions: entab; detab; command
  52.       repeat; sort; etc.
  53.    -  redefinable keys; custom define your own keyboard setup
  54.    -  complete menu system
  55.    -  multiple files
  56.    -  execute DOS commands with only 10k of overhead
  57.    -  no configuration files needed; no environment variables to
  58.       set
  59.    -  completely configurable
  60.    -  effective use of placemarks to mark positions
  61.    -  edit files up to size of memory
  62.    -  user definable help file
  63.    -  extensive block operation support, include point, line, and
  64.       vertical marking, and two different sets of block operations
  65.    -  in addition to the default paste buffer, there are 26
  66.       additional named buffers, 'a'-'z'.
  67.    -  wordwrap and paragraph formatting support
  68.    -  C Mode for programming in the C programming language
  69.    -  Delimiter matching & indentation matching
  70.    -  wildcard filespecs lead to a directory list picker
  71.    -  execute command line level compilers from within Bingo with
  72.       only 10k of overhead
  73.    -  both vertical and horizontal windows
  74.    -  you can interrupt Bingo at any time, exit it, and when you
  75.       return it will allow you to pick up exactly where you left off
  76.    -  command to allow you to save all the files in the ring
  77.       which have been modified
  78.    -  error parsing for most compiler types (Borland & Microsoft)
  79.    -  macro functions dynamically manage memory space for 2048
  80.       tokens
  81.    -  Bingo can be set to detect the current screen size and use
  82.       it, or to switch automatically to 43/50 line modes if it exists.
  83.    -  print files, lines, or send control sequences to the
  84.       serial or parallel ports, or to a file.  You can print with
  85.       or  without line numbers
  86.    -  the search  (and replace) algorithm will confine itself to
  87.       the currently linemarked block, providing the search starts
  88.       within the block.  All block types are treated as
  89.       linemarked for this purpose.
  90.    -  paragraph reformating function and word wrap mode preserve
  91.       the left indention of the current line depending on whether
  92.       or not Autoindent mode is active.
  93.    -  a 'Count' option was added to the search function.
  94.    -  command line switches (/lxx & /cxx) to start at a specific
  95.       line & column.
  96.    -  matching mode for matching insertion of delimiters now
  97.       supported.
  98.    -  'cut_append' & 'copy_append' allow a marked block to be appended
  99.       to the current contents of the buffer, provided the buffer
  100.       and the block use the same marking type.
  101.    -  Ascii table built in
  102.    -  Eeeeeek! Mice!!!!!  Bingo makes full programmable use
  103.       of a mouse, should you have one.
  104.  
  105. Features New to Bingo version 2.01
  106. ----------------------------------
  107.    -  extension specific settings have been introduced:
  108.       -  [profile.???] contains the settings for any file with
  109.          extension .???.  The settings used are the text
  110.          configuration options, such as:
  111.             insert mode, tab size, autoindention, wordwrap, C
  112.             mode, right margin, smart tabs, matching mode,
  113.             and backspace mode.
  114.       -  the files can be in the current directory (first choice)
  115.          or in Bingo's home directory.
  116.       -  using the 'conf_profile' function you can control
  117.          whether or not this file is loaded
  118.    -  [keyset.???] likewise has the keyset to load for the given
  119.       extension; this includes all key assignments and macros.
  120.       This file will *not* load automatically, you have to
  121.       explicitly load it using the 'key_set_load' or
  122.       'load_profile' functions.
  123.    -  'write_profile' & 'load_profile' to write/save the current
  124.       settings to the extension file corresponding to the current
  125.       filename.  You are given the option of writing/saving the
  126.       information in the current directory, or to Bingo's home
  127.       directory.  You are given the option of writing/saving both
  128.       the profile and/or the keyset under a particular extension
  129.    -  'print_file' & 'print_block' functions combined into
  130.       'print_file'.  If you print while a block is marked, it
  131.       will be printed.  If there is no block marked, the entire
  132.       file will be printed.
  133.    -  When you are printing out a file or a block, a line with a
  134.       ASCII decimal 12 (FormFeed) character in it will signal the
  135.       printing algorithm to end that page.  The text before and
  136.       after the FF will be placed on the proper pages, after the
  137.       top margin if applicable.  This makes it much easier to
  138.       prepare short straight-text documents for the printer.
  139.    -  all print functions cleaned up in general. Messages
  140.       regarding printing will not overwrite the menus.
  141.    -  The 'New Spec' option in the directory picker now allows
  142.       you to enter a nonexistent filename, to allow the use of
  143.       new files.
  144.    -  Bingo will now restore the screen size to what it was when
  145.       Bingo started, and it will resize the screen if necessary
  146.       when restoring from a swap or interrupt.
  147.    -  essentially, all of the search routines were reworked for
  148.       more consistency and speed.
  149.    -  Regular Expressions!!!  Yes, I have implemented a regular
  150.       expression search algorithm for Bingo.  This option is
  151.       available as a modification to any of the search commands,
  152.       including 'search_and_macro'.  The algorithm is much slower
  153.       than straight ascii search, but it cost a mere 3k in code
  154.       size, and some things just can't be searched for without
  155.       regular expressions, at least not easily.  Bingo's
  156.       implementation includes:
  157.       -  classes, i.e. [0-9] and 'not' classes, i.e [~0-9]
  158.       -  occurrences of once, once or none (?), one or more (+), none or
  159.          more (*)
  160.       -  grouping  {}
  161.       -  ORing of {} groups |
  162.       -  wildcard character .
  163.       -  match begin and end of lines with ^ and $, respectively
  164.       -  support for debugging regular expression search patterns
  165.       -  along with regular expression searches, you can specify the
  166.          replacement in terms of the matched text.  '@n' in the
  167.          replacement pattern places the text matching the nth
  168.          group. '@@' matches the entire matched text. This allows
  169.          you to do some nifty text manipulation.
  170.  
  171.          Examples:
  172.          -                    [a-z]+/.
  173.             would match any sequence of one or more letters
  174.             between 'a' and 'z' followed by a single period.
  175.  
  176.          -                 help[a-z]+/.
  177.             would match a sequence of 'help' followed by one or
  178.             more letters then a single period.  It would match
  179.             'helpoooooo.' and 'helpp.' but not 'help.'
  180.          -                 19{87}|{88}
  181.             would match '19' followed by one occurance of either
  182.             '87' or '88'.
  183.          -                 19{87}*|{88}
  184.             would match '19' followed by none or more occurances
  185.             of '87' or a single occurance of '88'.  Thus it would
  186.             match '19', '1987878787', or '1988'.
  187.          -                 .
  188.             matches any single character.
  189.          -                 ^[a-z]+
  190.             matches a sequence of 1 or more letters, provided it
  191.             starts a line.
  192.          -                 ^[a-z]+$
  193.             matches a sequence of 1 or more letters, provided it
  194.             starts a line and ends a line.
  195.          -                 ^[a-z]+/.[a-z]+
  196.             basically matches filenames made up of alpha
  197.             characters, which are found at the beginning of a
  198.             line.
  199.          -                 ^$
  200.             matches a blank line.
  201.          -                 ^.
  202.             matches a non-blank line.
  203.          -  These last two allow you to do some neat stuff using
  204.             the macro capability, i.e., apply a macro to every
  205.             non-blank line.
  206.  
  207.       This search algorithm is slow!!!!!!!!!!!
  208.  
  209.    -  you can now specify the default search/replace
  210.       modifications.  New modifications include:
  211.       -  'P', which will preserve the cursor position before a
  212.          search and replace operation and return you to it when
  213.          the operation concludes.
  214.       -  'A', which while highlight or 'accent' the found text
  215.          until a keystroke is detected.
  216.       -  'D', used for debugging regular expressions; shows how
  217.          Bingo interpreted what you typed in terms of numbered
  218.          explicit groups.
  219.       The latter two help out immensely when testing various
  220.       regular expressions.
  221.    -  'end_macro' function added; it wasn't really need, but it
  222.       made for a useful menu entry.  The key sequence used to get
  223.       to this menu selection is not recorded, so you can navigate
  224.       to it in the menu without fear.
  225.    -  'begin'/'end' added as delimiters which can be matched.
  226.       This should convince Pascal programmers that I haven't
  227.       forgotten them!
  228.    -  Mouse reaction to the triple pyramids is now programmable
  229.       for both single and multiple mouse clicks.  This brings the
  230.       programmable number of mouse events to twenty.
  231.    -  there is now support for both of the below types of C mode
  232.       formatting:
  233.             for(i=0;i<10;i++){   and   for(i=0;i<10;i++)
  234.                ..stuff..               {
  235.             }                             ..stuff..
  236.                                        }
  237.    -  for each of the 9 text settings, such as insert mode and
  238.       matching mode, a seperate setting is now maintained for
  239.       each file in the ring.  This greatly simplifies working
  240.       with different types of files.
  241.    -  'info' function reworked to give more precise information
  242.       on the files in the ring.
  243.    -  when control character highlighting is turned on, via the
  244.       'conf_ctrl_display' function, a '' character will be
  245.       displayed in normal text color at the end of each line to
  246.       represent the end-of-line character.  This is only
  247.       available when control character highlighting is active.
  248.    -  anytime Bingo asks for a filename, you can now give it both
  249.       '\' delimited and '/' delimited specifications.  '/'s are
  250.       automagically converted to '\'s.  This will make life more
  251.       palatable for those who use UNIX systems regularly.
  252.    -  when Bingo is started from the command line an info screen
  253.       is displayed, and a new function 'version_info', will
  254.       redisplay the screen at any time.  This screen contains
  255.       information such as version number, my name and address,
  256.       etc.  In addition, it tells who this version is registered
  257.       to, if it is a registered users copy.  Registered users,
  258.       beginning with version 2.01, will receive a program to
  259.       imprint their name on this opening screen, thus alowing
  260.       them to show their friends what honorable people they are.
  261.    -  'conf_sound' function allows you to control the frequency
  262.       used when Bingo beeps -- setting the frequency to 0 results
  263.       in no sound at all.
  264.    -  'key_set_impress' functions writes the current keyset
  265.       information; key assignments, macros, etc, to the BE.EXE
  266.       file on disk, thus making them permanant.
  267.    -  a seperate mouse config menu is now in place, with three
  268.       options: whether the mouse is turned on, what length of
  269.       time the mouse waits between multiple button presses
  270.       ('conf_buttonwait'), and the amount Bingo delays before
  271.       repeating a mouse function, say from the command line hot
  272.       spots ('conf_mdelay').
  273.    -  'conf_shadow' function allows you to turn on and off the
  274.       shadowing of popup text boxes.  I wanted to see if it could
  275.       be done easily, it could, i did it, it is pretty.  Not
  276.       overly useful though.
  277.    -  'T/F' flag added to the status line, at the right end, just
  278.       before the triple pyramids, which shows whether the last
  279.       function executed returned a True or False value.  This is
  280.       preparatory to adding a branching and testing capability in
  281.       future verions.
  282.    -  'conf_winclose' allows you to control whether or not
  283.       exiting a file, whether through quitting, filing, or
  284.       aborting, closes its associated window.
  285.    -  'conf_iobuf' && 'win_find' functions deleted.  They were
  286.       judged to be of very limited usefulness.
  287.    -  added default file extensions.  Up to ten default
  288.       extensions can be defined, and when you ask for a file
  289.       without an extension, such as 'main', Bingo will check to
  290.       see if a file with any of the matching extensions exists.
  291.       The extensions are checked in ascending order.  The
  292.       function 'conf_def_ext' is used to modify the existing
  293.       extensions.
  294.    -  changed the pickdir code to display time as am or pm,
  295.       rather than in 24 hour format.
  296.    -  a new, slightly friendlier strategy for changing colors was
  297.       implemented.
  298.    -  added a seperate color attribute for the highlighted
  299.       character in a menu selection.
  300.    -  When you 'shell' to DOS or 'swap_shell' to DOS, no
  301.       keystroke is required to return to Bingo.
  302.    -  the backup extension to be used is now configurable.
  303.       Choosing no extensions turns the backup feature off.
  304.    -  'scroll_up' and 'scroll_down' functions added which scroll
  305.       the screen in the direction stated, but do not move the
  306.       cursor position on the screen.
  307.    -  Bingo will no longer automaticaly entab a file when saving.
  308.       this was judged to be more trouble than it was worth.  If
  309.       there is a large outcry, I will add this in a future
  310.       release.
  311.    -  from inside any string entry box (such as when Bingo asks
  312.       for the target sting to be searched for), youcan press
  313.       Control-Q followed by any ASCII character.  You may use the
  314.       Alt+keypad combinations if you wish.
  315.  
  316. Fixed Bugs in version 2.01
  317. --------------------------
  318.    -  bug in the macro handling fixed.  Whenever a key was
  319.       defined, or if a keyset was read in, some keys would be
  320.       made unavailable even though they were defined, such as the
  321.       Control-Page-Up combination.  An unforeseen overflow
  322.       condition caused this error.  This bug was fixed shortly
  323.       after version 2.0 was shipped, and I subsequently shipped a
  324.       corrected version fixing just this bug but a number of the
  325.       flawed versions were distributed.
  326.    -  bug in Overwrite mode fixed.  This was a serious bug
  327.       which could cause real problems, depending on the
  328.       situation.  What happened was that when you overwrite the
  329.       last character on a line, the line was not properly
  330.       terminated.  Later on, this was a problem.  Gracias to Bob
  331.       Boyken for reporting this one.
  332.    -  slight bug in Keyinst (not all functions are named
  333.       correclty) was fixed.
  334.    -  bug in the 'global' function fixed, and the whole function
  335.       cleaned up to be easier and more painless to use.
  336.    -  bug in using Escape to end macro recording fixed.
  337.       Previously, when you hit Escape, the last key hit *before*
  338.       Escape was also wiped out.
  339.    -  bug within the swap/suspend code fixed.  Bingo was not
  340.       properly saving the state of the error processing, the
  341.       placemarks, and the type of block in each of the paste
  342.       buffers.  This had to do with where/how TurboC stores
  343.       different types of variables in memory.
  344.    -  if the last line of a file was not followed by a LF, it
  345.       would not be read in.  Fixed. (Thanks Steve, for noticing!)
  346.    -  Likewise, Bingo was appending a CR/LF (or just LF) to the
  347.       end of the last line, when, more correctly, it shouldn't be
  348.       there.  Fixed.
  349.    -  any number of small searching special cases were fixed.
  350.    -  pernicious bug in the mouse routines fixed; with some mice,
  351.       or more correctly, with some mouse *drivers*, Bingo's mouse
  352.       was not operating correctly when in 43/50 line mode.
  353.    -  irritating problem with the status line when not in mouse
  354.       mode fixed.  Sometimes, if filenames were too long, the end
  355.       of the name would be clipped off.
  356.    -  bug in all of the commands which apply a key, such as
  357.       'search_and_macro', 'repeat', etc.  Won't let you apply a
  358.       key not explicitly defined in the table, such as simple
  359.       'a'.  Fixed.
  360.    -  bug in the 'paste_replace' function fixed; this one caused
  361.       the replace to fail in certain situations.
  362.    -  bug in the keyboard table management routines fixed, in
  363.       which certain keys gave unpredictable results.  Very rare.
  364.    -  bug where delete word popped to much text onto the undo
  365.       text fixed.
  366.  
  367. Registering
  368. -----------
  369.    When you register your copy of Bingo, you get the next version
  370. free, all following veersions for $5, and you of course get
  371. unlimited support.  In addition, as of version 2.01, you will get
  372. an executable with your name on the opening screen, so you can
  373. show everyone what an honest person you are.
  374.  
  375. Comments
  376. --------
  377.    Whether you are an avid user or an avid hater of Bingo, PLEASE
  378. do not hesitate to contact me.  It is of tremendous use to me to
  379. get your feedback on Bingo.
  380.  
  381. Contacting the Author:
  382. ----------------------
  383.  
  384.    Feel free to contact me any time about any problems, suggestions,
  385. or just plain discussions concerning Bingo, regardless of whether
  386. you are registered.  Without users, any product, now matter how
  387. good, is so much raw data sitting on a disk somewhere.  Either
  388. write to this address:
  389.  
  390.                   Christopher R. S. Schanck
  391.                   PO Box 279
  392.                   Hanover MD 21076
  393.  
  394. or call:
  395.                   (301) 997-3041
  396.  
  397. if that number shoudl no longer be active, use:
  398.  
  399.                   (215) 691-1070
  400.                   9am to 6pm EST
  401.  
  402. Getting the Latest Version
  403. --------------------------
  404.    The best way to aquire the latest version of Bingo is by
  405. calling the Computer Connections BBS in Washington DC.  This is a
  406. very fine, very large board which is excellently managed.  It
  407. will always have the latest release, and E-Mail left for me their
  408. will get responded to.  The phone number is:
  409.    (202) 547-2008
  410.  
  411.  
  412.